home *** CD-ROM | disk | FTP | other *** search
/ Power Programmierung 2 / Power-Programmierung CD 2 (Tewi)(1994).iso / c / library / dos / sysinfo / ver1 / sysinfo.doc < prev    next >
Encoding:
Text File  |  1994-03-08  |  71.4 KB  |  2,240 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.                       S Y S T E M  I N F O  L I B R A R Y
  18.                                 For Borland C++
  19.                                   Version 1.0
  20.  
  21.  
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.                      Copyright (C) 1994 By Paul Lapsansky
  54.                               ALL RIGHTS RESERVED
  55.  
  56.  
  57.  
  58.  
  59.  
  60.          i. CONTENTS
  61.  
  62.              i.   CONTENTS. . . . . . . . . . . . . . . . . . . . . . 2
  63.  
  64.              I.   INTRODUCTION. . . . . . . . . . . . . . . . . . . . 5
  65.                   A.  What is supported . . . . . . . . . . . . . . . 5
  66.                   B.  Registration. . . . . . . . . . . . . . . . . . 5
  67.                   C.  Disclaimer. . . . . . . . . . . . . . . . . . . 5
  68.  
  69.              II.  SYSTEM FUNCTIONS. . . . . . . . . . . . . . . . . . 6
  70.  
  71.                   A. DISPLAY. . . . . . . . . . . . . . . . . . . . . 7
  72.                      1. GETCRT. . . . . . . . . . . . . . . . . . . . 7
  73.                      2. GETVESA . . . . . . . . . . . . . . . . . . . 7
  74.                      3. GETVIDEO. . . . . . . . . . . . . . . . . . . 7
  75.  
  76.                   B. DOS. . . . . . . . . . . . . . . . . . . . . . . 9
  77.                      1. CHKANSI . . . . . . . . . . . . . . . . . . . 9
  78.                      2. CHKAPPEND . . . . . . . . . . . . . . . . . . 9
  79.                      3. CHKASSIGN . . . . . . . . . . . . . . . . . . 9
  80.                      4. CHKDISPLAY. . . . . . . . . . . . . . . . . . 9
  81.                      5. CHKDOSHIGH. . . . . . . . . . . . . . . . . .10
  82.                      6. CHKDOSKEY . . . . . . . . . . . . . . . . . .10
  83.                      7. CHKDRIVER . . . . . . . . . . . . . . . . . .10
  84.                      8. CHKEGA. . . . . . . . . . . . . . . . . . . .10
  85.                      9. CHKGRAFTABL . . . . . . . . . . . . . . . . .11
  86.                      10. CHKGRAPHICS. . . . . . . . . . . . . . . . .11
  87.                      11. CHKKEYB. . . . . . . . . . . . . . . . . . .11
  88.                      12. CHKNLSFUNC . . . . . . . . . . . . . . . . .12
  89.                      13. CHKPRINT . . . . . . . . . . . . . . . . . .12
  90.                      14. CHKSHARE . . . . . . . . . . . . . . . . . .12
  91.                      15. CHKSHELLB. . . . . . . . . . . . . . . . . .12
  92.                      16. CHKXMA2EMS . . . . . . . . . . . . . . . . .13
  93.                      17. GET4DOSV . . . . . . . . . . . . . . . . . .13
  94.                      18. GETDOSOEM. . . . . . . . . . . . . . . . . .13
  95.                      19. GETDOSV. . . . . . . . . . . . . . . . . . .13
  96.                      20. GETDRDOSV. . . . . . . . . . . . . . . . . .14
  97.                                                                          
  98.                    C. DRIVES. . . . . . . . . . . . . . . . . . . . .15
  99.                      1. CDROM . . . . . . . . . . . . . . . . . . . .15
  100.                      2. CHKREMOTE . . . . . . . . . . . . . . . . . .15
  101.                      3. CHKREMOVABLE. . . . . . . . . . . . . . . . .15
  102.                      4. GETAVAILDRVS. . . . . . . . . . . . . . . . .16
  103.                      5. GETDRVINFO. . . . . . . . . . . . . . . . . .16
  104.                      6. GETDRVSPACE . . . . . . . . . . . . . . . . .16
  105.                      7. GETFLOPPY . . . . . . . . . . . . . . . . . .17
  106.                      8. GETFLOPTYPE . . . . . . . . . . . . . . . . .17
  107.                      9. ISCDROM . . . . . . . . . . . . . . . . . . .17
  108.                      10. ISDBLSPACE . . . . . . . . . . . . . . . . .18
  109.                      11. ISSTACKER. . . . . . . . . . . . . . . . . .18
  110.  
  111.                   D. HARDWARE . . . . . . . . . . . . . . . . . . . .19
  112.                    
  113.                                   - 2 -
  114.  
  115.  
  116.  
  117.  
  118.  
  119.                      1. BIOSDATE. . . . . . . . . . . . . . . . . . .19
  120.                      2. CHKENHKEYB. . . . . . . . . . . . . . . . . .19
  121.                      3. GETCOM. . . . . . . . . . . . . . . . . . . .19
  122.                      4. GETCPU. . . . . . . . . . . . . . . . . . . .19
  123.                      5. GETFEATURES . . . . . . . . . . . . . . . . .20
  124.                      6. GETID . . . . . . . . . . . . . . . . . . . .20
  125.                      7. GETLPT. . . . . . . . . . . . . . . . . . . .21
  126.                      8. GETNPU. . . . . . . . . . . . . . . . . . . .21
  127.  
  128.                   E. MEMORY . . . . . . . . . . . . . . . . . . . . .22
  129.                      1. CHKDPMI . . . . . . . . . . . . . . . . . . .22
  130.                      2. CHKEMS. . . . . . . . . . . . . . . . . . . .22
  131.                      3. CHKVCPI . . . . . . . . . . . . . . . . . . .22
  132.                      4. CHKXMS. . . . . . . . . . . . . . . . . . . .22
  133.                      5. GETAVAILEXT . . . . . . . . . . . . . . . . .23
  134.                      6. GETDPMIV. . . . . . . . . . . . . . . . . . .23
  135.                      7. GETEMM. . . . . . . . . . . . . . . . . . . .23
  136.                      8. GETEMS. . . . . . . . . . . . . . . . . . . .24
  137.                      9. GETEMSI . . . . . . . . . . . . . . . . . . .24
  138.                      10. GETEMSV. . . . . . . . . . . . . . . . . . .25
  139.                      11. GETEXT . . . . . . . . . . . . . . . . . . .25
  140.                      12. GETRAM . . . . . . . . . . . . . . . . . . .25
  141.                      13. GETVCPIV . . . . . . . . . . . . . . . . . .26
  142.                      14. GETXMSA. . . . . . . . . . . . . . . . . . .26
  143.                      15. GETXMSI. . . . . . . . . . . . . . . . . . .26
  144.                      16. GETXMSV. . . . . . . . . . . . . . . . . . .27
  145.  
  146.                   F. MOUSE. . . . . . . . . . . . . . . . . . . . . .28
  147.                      1. CHKMOUSE. . . . . . . . . . . . . . . . . . .28
  148.                      2. GETMOUSEI . . . . . . . . . . . . . . . . . .28
  149.                      3. GETMOUSEV . . . . . . . . . . . . . . . . . .28
  150.                                                                          
  151.                  G. NETWORK . . . . . . . . . . . . . . . . . . . . .30  
  152.                      1. CHKIPX. . . . . . . . . . . . . . . . . . . .30
  153.                      2. GETLOGINTIME. . . . . . . . . . . . . . . . .30
  154.                      3. GETNETNAME. . . . . . . . . . . . . . . . . .30
  155.                      4. GETUSERNAME . . . . . . . . . . . . . . . . .31
  156.                      5. NETBIOS . . . . . . . . . . . . . . . . . . .31
  157.                      6. NETSHELL. . . . . . . . . . . . . . . . . . .31
  158.                                                                        
  159.                   H. TSR'S, DRIVERS AND SHELLS. . . . . . . . . . . .33
  160.                      1. CPTASK. . . . . . . . . . . . . . . . . . . .33
  161.                      2. DBLSPACE. . . . . . . . . . . . . . . . . . .33
  162.                      3. DOSSHELL. . . . . . . . . . . . . . . . . . .33
  163.                      4. GETDESQV. . . . . . . . . . . . . . . . . . .33
  164.                      5. GETWINV . . . . . . . . . . . . . . . . . . .34
  165.                      6. HYPERDISK . . . . . . . . . . . . . . . . . .34
  166.                      7. MSCDEX. . . . . . . . . . . . . . . . . . . .35
  167.                      8. NCACHE. . . . . . . . . . . . . . . . . . . .35
  168.                      9. PCCACHE . . . . . . . . . . . . . . . . . . .35
  169.                      10. PCKWIK . . . . . . . . . . . . . . . . . . .35
  170.                      11. SMARTDRV . . . . . . . . . . . . . . . . . .36
  171.  
  172.                                   - 3 -
  173.  
  174.  
  175.  
  176.  
  177.  
  178.                      12. SPACEMAN . . . . . . . . . . . . . . . . . .36
  179.                      13. STACKER. . . . . . . . . . . . . . . . . . .36
  180.                      14. TASKMAX. . . . . . . . . . . . . . . . . . .37
  181.                                                                         
  182.              III. REGISTRATION FORM . . . . . . . . . . . . . . . . .38  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.  
  209.  
  210.  
  211.  
  212.  
  213.  
  214.  
  215.       
  216.  
  217.  
  218.  
  219.  
  220.  
  221.  
  222.  
  223.  
  224.  
  225.  
  226.  
  227.  
  228.  
  229.  
  230.  
  231.                                   - 4 -
  232.  
  233.  
  234.  
  235.  
  236.  
  237.          I.  INTRODUCTION
  238.                              
  239.             The SYSTEM INFO LIBRARY provides over 80 functions which     
  240.             access system information such as CPU or display type        
  241.             from within a Borland C program.  I have included the C      
  242.             source and executable for a program that demonstrates most   
  243.             of the functions available in the SYSTEM INFO LIBRARY.       
  244.             This "demo" program was compiled with Borland C++ v3.1 and   
  245.             may require some modification for other versions.
  246.  
  247.              1.  What is supported.
  248.  
  249.                  Turbo C++ or Borland C++ v2.0 or higher                 
  250.       
  251.                  Note:  This library should work with previous versions 
  252.                         with little or no modification as well as other 
  253.                         C compilers but, as of this documentation, it
  254.                         has only been tested on Borland C++ 2.0 - 4.0.  
  255.                         Please let me know how this library works with
  256.                         other versions or compilers so that I can update
  257.                         this documentation or make changes to the 
  258.                         library.
  259.  
  260.              2.  Registration.                 
  261.  
  262.                  It is expected that if you find the SYSTEM INFO LIBRARY
  263.                  useful, you will register your copy.  You may not use
  264.                  SYSTEM INFO LIBRARY functions in programs intended for  
  265.                  sale unless you have registered.  Upon registration,    
  266.                  you will receive the latest version of the SYSTEM INFO  
  267.                  LIBRARY.  Registration also entitles you to receive     
  268.                  updates (hardware and software are constantly changing) 
  269.                  for $10.00.  Registered users may then distribute       
  270.                  programs linked with the SYSTEM INFO LIBRARY without    
  271.                  further royalties.
  272.  
  273.              3.  Disclaimer
  274.  
  275.                  USE THIS LIBRARY AT YOUR OWN RISK.  I have made great
  276.                  efforts to test this library on as many different 
  277.                  computers as possible, but, I will not assume any 
  278.                  responsibility for any problems which this library may
  279.                  cause you. If you do run into a problem, please let me  
  280.                  know about it and I will do my best to respond to it.
  281.     
  282.  
  283.  
  284.  
  285.  
  286.  
  287.  
  288.  
  289.  
  290.                                   - 5 -
  291.  
  292.  
  293.  
  294.  
  295.  
  296.          II.  SYSTEM FUNCTIONS
  297.  
  298.               This section lists all the functions available in the      
  299.               SYSTEM INFO LIBRARY as well as a brief description, any    
  300.               parameters required or returned and an example of how to   
  301.               use the function.  Also listed is any hardware or software 
  302.               that the function is applicable with as well as any        
  303.               hardware or software that must be installed for the        
  304.               function to work correctly.
  305.  
  306.  
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  
  335.  
  336.  
  337.  
  338.  
  339.  
  340.  
  341.  
  342.  
  343.  
  344.  
  345.  
  346.  
  347.                                        
  348.  
  349.                                   - 6 -
  350.  
  351.  
  352.  
  353.  
  354.  
  355.               A.  DISPLAY     
  356.  
  357.                   1.  GETCRT                                             
  358.  
  359.                       Returns the type of display attached to an EGA or
  360.                       VGA card.
  361.  
  362.                                0 - Color monitor attached
  363.                                1 - Monochrome monitor attached
  364.  
  365.                       usage:  ret = getCRT()
  366.  
  367.                       argument list:  void
  368.  
  369.                       return value:   int          the display type
  370.  
  371.                       available on:   EGA or higher.
  372.  
  373.                       restrictions:   none.
  374.  
  375.                   2.  GETVESA   
  376.  
  377.                       Returns if a VESA BIOS extension is installed.  
  378.                       If installed, then it returns the VESA version 
  379.                       and total video RAM installed.
  380.  
  381.                       usage:  ret = getVESA(&major,&minor,&vram)
  382.  
  383.                       argument list:  int major    VESA version
  384.                                       int minor    VESA version
  385.                                       int vram     total video RAM
  386.  
  387.                       return value:   int          if VESA installed
  388.                                                    (1 - Yes, 0 - No)
  389.                       available on:   VGA display.
  390.  
  391.                       restrictions:   none.
  392.  
  393.                   3.  GETVIDEO
  394.  
  395.                       Returns the type of video card installed.
  396.  
  397.                              1 - MDA  (Monochrome Display Adapter)  
  398.                              2 - HGA  (Hercules Graphics Adapter)   
  399.                              3 - CGA  (Color Graphics Adapter)      
  400.                              4 - EGA  (Enhanced Graphics Adapter)   
  401.                              5 - MCGA (Multi-Color Graphics Array)
  402.                              6 - VGA  (Video Graphics Array)        
  403.  
  404.                       usage:  ret = getVideo()                          
  405.  
  406.                       argument list:  void                               
  407.  
  408.                                   - 7 -
  409.  
  410.  
  411.  
  412.  
  413.  
  414.                       return value:   int          video card type  
  415.  
  416.                       available on:   all machines.
  417.  
  418.                       restrictions:   none.
  419.  
  420.  
  421.  
  422.  
  423.  
  424.  
  425.  
  426.  
  427.  
  428.  
  429.  
  430.  
  431.  
  432.  
  433.  
  434.  
  435.  
  436.  
  437.  
  438.  
  439.  
  440.  
  441.  
  442.  
  443.  
  444.  
  445.  
  446.  
  447.  
  448.  
  449.  
  450.  
  451.  
  452.  
  453.  
  454.  
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.                                   - 8 -
  468.  
  469.  
  470.  
  471.  
  472.  
  473.               B.  DOS
  474.  
  475.                   1.  CHKANSI
  476.  
  477.                       Returns whether ANSI.SYS is installed.
  478.  
  479.                       usage:  ret = chkAnsi()                           
  480.  
  481.                       argument list:  void                               
  482.  
  483.                       return value:   int          if ANSI.SYS installed
  484.                                                      (1 - Yes, 0 - No)
  485.                       available on:   DOS 4.0 or higher.
  486.  
  487.                       restrictions:   none.
  488.  
  489.                   2.  CHKAPPEND
  490.  
  491.                       Returns whether APPEND is installed.
  492.  
  493.                       usage:  ret = chkAppend()                          
  494.  
  495.                       argument list:  void                               
  496.  
  497.                       return value:   int          if APPEND installed  
  498.                                                     (1 - Yes, 0 - No)
  499.                       available on:   all machines.
  500.  
  501.                       restrictions:   none.
  502.  
  503.                   3.  CHKASSIGN
  504.  
  505.                       Returns whether ASSIGN is installed.
  506.  
  507.                       usage:  ret = chkAssign()                         
  508.  
  509.                       argument list:  void                               
  510.  
  511.                       return value:   int          if ASSIGN installed   
  512.                                                     (1 - Yes, 0 - No)
  513.                       available on:   DOS 3.0 or higher.
  514.  
  515.                       restrictions:   none.
  516.  
  517.                   4.  CHKDISPLAY
  518.  
  519.                       Returns whether DISPLAY.SYS is installed.
  520.  
  521.                       usage:  ret = chkDisplay()                        
  522.  
  523.                       argument list:  void                               
  524.  
  525.  
  526.                                   - 9 -
  527.  
  528.  
  529.  
  530.  
  531.  
  532.                       return value:   int         if DISPLAY installed
  533.                                                    (1 - Yes, 0 - No)
  534.                       available on:   DOS 3.3 or higher.
  535.  
  536.                       restrictions:   none.
  537.  
  538.                   5.  CHKDOSHIGH
  539.  
  540.                       Returns whether DOS is loaded high.
  541.  
  542.                       usage:  ret = chkDosHigh()                        
  543.  
  544.                       argument list:  void                               
  545.  
  546.                       return value:   int          if DOS is loaded high 
  547.                                                      (1 - Yes, 0 - No)
  548.                       available on:   DOS 5.0+ or DR-DOS 6.0+
  549.  
  550.                       restrictions:   none.                            
  551.  
  552.                   6.  CHKDOSKEY
  553.  
  554.                       Returns whether DOSKEY is installed.
  555.  
  556.                       usage:  ret = chkDoskey()                         
  557.  
  558.                       argument list:  void                               
  559.  
  560.                       return value:   int          if DOSKEY installed  
  561.                                                     (1 - Yes, 0 - No)
  562.                       available on:   DOS 5.0 or higher.
  563.  
  564.                       restrictions:   none.                            
  565.  
  566.                   7.  CHKDRIVER
  567.  
  568.                       Returns whether DRIVER.SYS in installed.
  569.  
  570.                       usage:  ret = chkDriver()                         
  571.  
  572.                       argument list:  void                               
  573.  
  574.                       return value:   int          if DRIVER installed
  575.                                                     (1 - Yes, 0 - No)
  576.                       available on:   DOS 3.3 or higher.
  577.  
  578.                       restrictions:   none.                        
  579.  
  580.                   8.  CHKEGA
  581.  
  582.                       Returns whether EGA.SYS in installed.
  583.  
  584.                  
  585.                                  - 10 -
  586.  
  587.  
  588.  
  589.  
  590.  
  591.                       usage:  ret = chkEGA()                            
  592.  
  593.                       argument list:  void                              
  594.  
  595.                       return value:   int          if EGA.SYS installed 
  596.                                                     (1 - Yes, 0 - No)
  597.                       available on:   all machines.
  598.  
  599.                       restrictions:   none.                              
  600.  
  601.                   9.  CHKGRAFTABL
  602.  
  603.                       Returns whether GRAFTABL is installed.
  604.  
  605.                       usage:  ret = chkGraftabl()                       
  606.  
  607.                       argument list:  void                               
  608.  
  609.                       return value:   int          if Graftabl installed 
  610.                                                      (1 - Yes, 0 - No)
  611.                       available on:   DOS 3.3 or higher.
  612.  
  613.                       restrictions:   none.                           
  614.  
  615.                   10. CHKGRAPHICS
  616.  
  617.                       Returns whether GRAPHICS.COM is installed.
  618.  
  619.                       usage:  ret = chkGraphics()                       
  620.  
  621.                       argument list:  void                               
  622.  
  623.                       return value:   int          if GRAPHICS installed
  624.                                                      (1 - Yes, 0 - No)
  625.                       available on:   DOS 4.0 or higher.
  626.  
  627.                       restrictions:   none.                             
  628.  
  629.                   11. CHKKEYB
  630.  
  631.                       Returns whether KEYB.COM is installed.
  632.  
  633.                       usage:  ret = chkKeyb()                           
  634.  
  635.                       argument list:  void                               
  636.                
  637.                       return value:   int          if KEYB.COM installed 
  638.                                                      (1 - Yes, 0 - No)
  639.                       available on:   DOS 3.3 or higher.
  640.  
  641.                       restrictions:   none.                        
  642.  
  643.  
  644.                                  - 11 -
  645.  
  646.  
  647.  
  648.  
  649.  
  650.                   12. CHKNLSFUNC
  651.  
  652.                       Returns whether NLSFUNC.COM is installed.
  653.  
  654.                       usage:  ret = chkNlsfunc()                        
  655.  
  656.                       argument list:  void                               
  657.  
  658.                       return value:   int          if NLSFUNC installed
  659.                                                     (1 - Yes, 0 - No)
  660.                       available on:   DOS 3.3 or higher.
  661.  
  662.                       restrictions:   none.     
  663.                       
  664.                   13. CHKPRINT
  665.  
  666.                       Returns whether PRINT is installed.
  667.  
  668.                       usage:  ret = chkPrint()                          
  669.  
  670.                       argument list:  void                               
  671.  
  672.                       return value:   int          if PRINT installed    
  673.                                                     (1 - Yes, 0 - No)
  674.                       available on:   DOS 3.0 or higher.
  675.  
  676.                       restrictions:   none.     
  677.  
  678.                   14. CHKSHARE
  679.  
  680.                       Returns whether SHARE.EXE
  681.  
  682.                       usage:  ret = chkNlsfunc()                        
  683.  
  684.                       argument list:  void                               
  685.  
  686.                       return value:   int          if SHARE installed   
  687.                                                     (1 - Yes, 0 - No)
  688.                       available on:   DOS 3.0 or higher.
  689.  
  690.                       restrictions:   none.     
  691.  
  692.                   15. CHKSHELLB
  693.  
  694.                       Returns whether SHELLB.COM
  695.  
  696.                       usage:  ret = chkShellb()                         
  697.  
  698.                       argument list:  void                               
  699.  
  700.                       return value:   int          if SHELLB installed  
  701.                                                     (1 - Yes, 0 - No)
  702.  
  703.                                  - 12 -
  704.  
  705.  
  706.  
  707.  
  708.  
  709.                       available on:   DOS 4.0 or higher.
  710.  
  711.                       restrictions:   none.
  712.      
  713.                   16. CHKXMA2EMS
  714.  
  715.                       Returns whether XMA2EMS.SYS
  716.  
  717.                       usage:  ret = chkXMA2EMS()                        
  718.  
  719.                       argument list:  void                               
  720.  
  721.                       return value:   int          if XMA2EMS installed 
  722.                                                     (1 - Yes, 0 - No)
  723.                       available on:   DOS 4.0 or higher.
  724.  
  725.                       restrictions:   none.     
  726.  
  727.                   17. GET4DOSV
  728.  
  729.                       Returns whether 4DOS is installed.  If installed,
  730.                       then the 4DOS version is returned.
  731.  
  732.                       usage:  ret = get4DosV(&major,&minor)              
  733.          
  734.                       argument list:  int major    version     
  735.                                       int minor    version      
  736.  
  737.                       return value:   int          if 4DOS installed
  738.                                                    (1 - Yes, 0 - No)
  739.                       available on:   4DOS 1.0 or higher.
  740.  
  741.                       restrictions:   none.
  742.  
  743.                   18. GETDOSOEM
  744.  
  745.                       Returns the DOS OEM number.
  746.  
  747.                       usage:  ret = getDosOem()                          
  748.       
  749.                       argument list:  void                               
  750.  
  751.                       return value:   int          DOS OEM number   
  752.  
  753.                       available on:   DOS 2.0 or higher.                 
  754.  
  755.                       restrictions:   none.
  756.  
  757.                   19. GETDOSV
  758.  
  759.                       Returns the DOS version.
  760.  
  761.  
  762.                                  - 13 -
  763.  
  764.  
  765.  
  766.  
  767.  
  768.                       Note:  OS/2 v1.x returns major version 10
  769.                              OS/2 v2.x returns major version 20
  770.                              DOS 4.01 and 4.02 return version 4.00       
  771.                              IBM DOS 6.1 returns version 6.0 (use DOS 
  772.                              OEM number to distinguish it from           
  773.                              MS-DOS 6.0)                
  774.  
  775.                       usage:  getDosV(&major,&minor)                     
  776.               
  777.                       argument list:  int major    version     
  778.                                       int minor    version      
  779.  
  780.                       return value:   void                               
  781.  
  782.                       available on:   All machines.                      
  783.  
  784.                       restrictions:   none.
  785.  
  786.                   20. GETDRDOSV
  787.  
  788.                       Returns the version I.D. of DR-DOS installed.
  789.                                                                       
  790.                            00h - DR-DOS not installed                    
  791.                            01h - Multi-User DR-DOS                       
  792.                            60h - DOS Plus                                
  793.                            63h - DR-DOS 3.41                             
  794.                            64h - DR-DOS 3.42                             
  795.                            65h - DR-DOS 5.0                              
  796.                            67h - DR-DOS 6.0                              
  797.                            70h - PalmDOS                                 
  798.                            71h - DR-DOS 6.0 (March 1993 Update)          
  799.                            72h - Novell DOS 7.0                          
  800.          
  801.                       usage:  ret = getDrDosV()                          
  802.          
  803.                       argument list:  void                               
  804.  
  805.                       return value:   int          DR-DOS version I.D.
  806.  
  807.                       available on:   DR-DOS 3.41 or higher.             
  808.  
  809.                       restrictions:   none.
  810.  
  811.  
  812.  
  813.  
  814.  
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.                                  - 14 -
  822.  
  823.  
  824.  
  825.  
  826.  
  827.             C.  DRIVES
  828.  
  829.                   1.  CDROM
  830.  
  831.                       Returns whether a CD-ROM drive is installed.  
  832.                       If installed, then the number of CD-ROM drive  
  833.                       letters and the starting drive letter is returned.
  834.  
  835.                       usage:  ret = CDROM(&num,drive)                    
  836.                    
  837.                       argument list:  int num      number of drives  
  838.                                       char *drive  starting drive letter
  839.  
  840.                       return value:   int          if CD-ROM installed   
  841.                                                     (1 - Yes, 0 - No)
  842.                       available on:   all machines.                      
  843.  
  844.                       restrictions:   none.
  845.  
  846.                   2.  CHKREMOTE
  847.  
  848.                       Returns if a given drive remote (networked) or 
  849.                       local.  
  850.                                        0 - Local
  851.                                        1 - Remote
  852.  
  853.                       usage:  ret = chkRemote(drive,&remote)             
  854.                    
  855.                       argument list:  char *drive  letter      
  856.                                       int remote   status         
  857.                       return value:   int          0 - if no errors      
  858.         
  859.                       available on:   DOS 3.1 or higher.                 
  860.  
  861.                       restrictions:   none.
  862.  
  863.                   3.  CHKREMOVABLE
  864.  
  865.                       Returns if a given drive is removable or fixed.
  866.  
  867.                                        0 - Removable
  868.                                        1 - Fixed
  869.  
  870.                       usage:  ret = chkRemovable(drive,&removable)       
  871.                    
  872.                       argument list:  char *drive   letter      
  873.                                       int removable status     
  874.                       return value:   int          0 - if no errors      
  875.                                                     
  876.                       available on:   DOS 3.0 or higher.                 
  877.  
  878.                       restrictions:   none.
  879.  
  880.                                  - 15 -
  881.  
  882.  
  883.  
  884.  
  885.  
  886.                   4.  GETAVAILDRVS
  887.  
  888.                       Returns the number of available drives.
  889.  
  890.                       usage:  ret = getAvailDrvs()                       
  891.                  
  892.                       argument list:  void                            
  893.  
  894.                       return value:   int          available drives      
  895.                                             
  896.                       available on:   all machines.                      
  897.  
  898.                       restrictions:   none.
  899.  
  900.                   5.  GETDRVINFO
  901.  
  902.                       Returns various information for a given drive.
  903.  
  904.                       usage:  ret = getDrvInfo(drive,&cyl,&heads,&sec)   
  905.                    
  906.                       argument list:  char *drive   letter      
  907.                                       int cyl       number of cylinders
  908.                                       int heads     number of heads
  909.                                       int sec       number of sectors
  910.  
  911.                       return value:   int          0 - if no errors      
  912.                                
  913.                       available on:   DOS 3.2 or higher.                 
  914.  
  915.                       restrictions:   none.
  916.                     
  917.                   6.  GETDRVSPACE
  918.  
  919.                       Returns various drive space information for a 
  920.                       given drive.
  921.  
  922.                       Cluster Size = Bytes Per Sec * Sectors Per Cluster 
  923.                       Free Space = Free Clusters * Cluster Size          
  924.                       Total Space = Total Clusters * Cluster Size        
  925.                       Used Space = Total Space - Free Space              
  926.       
  927.                       usage:  ret = getDrvSpace(drive,&SecPerClus,       
  928.                                              &FreeClus,&BytesPerSec,     
  929.                                              &TotalClus)
  930.  
  931.                       argument list:  char *drive      letter            
  932.                                 long SecPerClus  sec per cluster
  933.                                       long FreeClu     free clusters
  934.                                       long BytesPerSec bytes per sector
  935.                                       long TotalClus   total clusters
  936.  
  937.                       return value:   int          0 - if no errors      
  938.                                                                          
  939.                                  - 16 -
  940.  
  941.  
  942.  
  943.  
  944.  
  945.                       available on:   DOS 2.0 or higher.                 
  946.  
  947.                       restrictions:   none.
  948.  
  949.                   7.  GETFLOPPY
  950.  
  951.                       Returns the number of floppy drives installed.
  952.  
  953.                       usage:  ret = getFloppy()                          
  954.          
  955.                       argument list:  none.                              
  956.  
  957.                       return value:   int          floppy drives
  958.  
  959.                       available on:   all machines.                      
  960.  
  961.                       restrictions:   none.
  962.  
  963.                   8.  GETFLOPTYPE
  964.  
  965.                       Returns the drive type for floppy drives A and B.
  966.                                                                       
  967.                                   0 - No drive installed                 
  968.                                   1 - 360K DD Drive                      
  969.                                   2 - 1.2M HD Drive                      
  970.                                   3 - 720K DD Drive                      
  971.                                   4 - 1.44M HD Drive                     
  972.                                   5 - 2.88M ED Drive                     
  973.                                                                          
  974.                        usage:  ret = getFlopType(&a,&b)                  
  975.                     
  976.                       argument list:  int a         drive A type      
  977.                                       int b         drive B type        
  978.  
  979.                       return value:   int          0 - if no errors      
  980.                                                   
  981.                       available on:   AT or higher. (some XT's)
  982.  
  983.                       restrictions:   none.
  984.  
  985.                   9.  ISCDROM
  986.  
  987.                       Returns if a given drive is an MSCDEX CD-ROM       
  988.                       drive.
  989.  
  990.                       Note: This function expects a Microsoft CD-ROM 
  991.                             extension version 2.00 or higher to be 
  992.                             installed.  Use MSCDEX to ensure that one
  993.                             is installed.
  994.  
  995.                       usage:  ret = iscdrom(drive)                       
  996.                 
  997.  
  998.                                  - 17 -
  999.  
  1000.  
  1001.  
  1002.  
  1003.  
  1004.                       argument list:  char *drive  letter      
  1005.  
  1006.                       return value:   int          if drive is a CD-ROM  
  1007.                                                      (1 - Yes, 0 - No)
  1008.                       available on:   all machines.                      
  1009.  
  1010.                       restrictions:   CD-ROM extension 2.00 or higher.
  1011.  
  1012.                   10. ISDBLSPACE
  1013.  
  1014.                       Returns if a given drive is a DBLSPACE compressed
  1015.                       drive. 
  1016.  
  1017.                       Note: This function expects DBLSPACE.BIN to be 
  1018.                             installed.  Use chkDblSpace() to ensure
  1019.                             that it is installed.
  1020.  
  1021.                       usage:  ret = isdblspace(drive)                    
  1022.                    
  1023.                       argument list:  char *drive  letter      
  1024.  
  1025.                       return value:   int          if a DBLSPACE drive   
  1026.                                                     (1 - Yes, 0 - No)
  1027.                       available on:   DOS 6.0 or higher.                 
  1028.  
  1029.                       restrictions:   DBLSPACE.BIN must be installed.
  1030.  
  1031.                   11. ISSTACKER
  1032.  
  1033.                       Returns if a given drive is a Stacker compressed
  1034.                       drive.  
  1035.  
  1036.                       usage:  ret = isstacker(drive)                     
  1037.             
  1038.                       argument list:  char *drive  letter      
  1039.  
  1040.                       return value:   int          if a Stacker drive    
  1041.                                                     (1 - Yes, 0 - No)
  1042.                       available on:   all machines.                      
  1043.  
  1044.                       restrictions:   none.
  1045.  
  1046.  
  1047.  
  1048.  
  1049.  
  1050.  
  1051.  
  1052.  
  1053.  
  1054.  
  1055.  
  1056.  
  1057.                                  - 18 -
  1058.  
  1059.  
  1060.  
  1061.  
  1062.  
  1063.               D.  HARDWARE
  1064.  
  1065.                   1.  BIOSDATE
  1066.  
  1067.                       Returns a string containing the BIOS date.
  1068.  
  1069.                       usage:  ret = biosDate()                           
  1070.                                 
  1071.                       argument list:  void                           
  1072.  
  1073.                       return value:   char*        BIOS date             
  1074.            
  1075.                       available on:   all machines.                      
  1076.  
  1077.                       restrictions:   none.
  1078.  
  1079.                   2.  CHKENHKEYB
  1080.  
  1081.                       Returns if an enhanced 101-Key keyboard is         
  1082.                       detected.
  1083.  
  1084.                       usage:  ret = chkEnhKeyB()                         
  1085.                
  1086.                       argument list:  void                            
  1087.  
  1088.                       return value:   int          if enhanced keyboard  
  1089.                                                      (1 - Yes, 0 - No)
  1090.                       available on:   all machines.                      
  1091.  
  1092.                       restrictions:   none.
  1093.  
  1094.                   3.  GETCOM
  1095.  
  1096.                       Returns the number of serial ports installed.
  1097.  
  1098.                       usage:  ret = getCOM()                             
  1099.                
  1100.                       argument list:  void                             
  1101.  
  1102.                       return value:   int          serial ports          
  1103.    
  1104.                       available on:   all machines.                      
  1105.  
  1106.                       restrictions:   none.
  1107.  
  1108.                   4.  GETCPU
  1109.  
  1110.                       Returns the type of CPU installed.
  1111.  
  1112.                              1 - NEC V20 or V30                          
  1113.                              2 - 8088 or 8086                            
  1114.                              3 - 80186                                   
  1115.  
  1116.                                  - 19 -
  1117.  
  1118.  
  1119.  
  1120.  
  1121.  
  1122.                              4 - 80286                                   
  1123.                              5 - 80386                                   
  1124.                              6 - 80486                                   
  1125.            
  1126.                       usage:  ret = getCPU()                             
  1127.                
  1128.                       argument list:  void                             
  1129.  
  1130.                       return value:   int          CPU type              
  1131.             
  1132.                       available on:   all machines.                      
  1133.  
  1134.                       restrictions:   none.
  1135.  
  1136.                   5.  GETFEATURES
  1137.  
  1138.                       Returns various information from the BIOS feature
  1139.                       byte.
  1140.  
  1141.                       usage:  ret = getFeatures(&DMA3,&s8259,&realtime,
  1142.                                           &keyint,&extint,&extbios,&mca)
  1143.                                                   
  1144.                       argument list:  int DMA3     DMA chan 3 used by HD
  1145.                                       int s8259    2nd 8259 installed
  1146.                                       int realtime real-time clock       
  1147.                                       int keyint   INT 15/AH=4Fh avail   
  1148.                                       int extint   INT 15/AH=41h avail   
  1149.                                       int extbios  extended BIOS area    
  1150.                                       int mca      Micro Channel bus
  1151.  
  1152.                       return value:   int          0 - if supported      
  1153.                                                    1 - if not supported
  1154.                       available on:   all machines.                      
  1155.  
  1156.                       restrictions:   none.
  1157.  
  1158.                   6.  GETID
  1159.  
  1160.                       Returns the model, submodel and revision I.D.
  1161.  
  1162.                       usage:  getID(&model,&submodel,&rev)               
  1163.        
  1164.                       argument list:  int model    BIOS model I.D.       
  1165.                                       int submodel BIOS submodel I.D.    
  1166.                                       int rev      BIOS revision level   
  1167.           
  1168.                       return value:   void                               
  1169.                            
  1170.                       available on:   all machines.                      
  1171.  
  1172.                       restrictions:   none.
  1173.  
  1174.  
  1175.                                  - 20 -
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.                   7.  GETLPT
  1182.  
  1183.                       Returns the number of parallel ports installed.
  1184.  
  1185.                       usage:  ret = getLPT()                             
  1186.                
  1187.                       argument list:  void                             
  1188.  
  1189.                       return value:   int          parallel ports        
  1190.    
  1191.                       available on:   all machines.                      
  1192.  
  1193.                       restrictions:   none.
  1194.  
  1195.                   8.  GETNPU
  1196.  
  1197.                       Returns the type of math co-processor installed.
  1198.  
  1199.                           0 - Math co-processor not installed            
  1200.                           1 - 8087                                       
  1201.                           2 - 80287                                      
  1202.                           3 - 80387                                      
  1203.        
  1204.                       Note: An 80486DX internal math co-processor        
  1205.                             appears as an 80387.
  1206.  
  1207.                       usage:  ret = getNPU()                             
  1208.                
  1209.                       argument list:  void                             
  1210.  
  1211.                       return value:   int          co-processor type     
  1212.              
  1213.                       available on:   all machines.                      
  1214.  
  1215.                       restrictions:   none.
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.                                  - 21 -
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.               E.  MEMORY
  1241.     
  1242.                   1.  CHKDPMI
  1243.  
  1244.                       Returns whether a DOS Protected Mode Interface
  1245.                       is installed.
  1246.  
  1247.                       usage:  ret = chkDPMI()                            
  1248.           
  1249.                       argument list:  void                             
  1250.  
  1251.                       return value:   int          if DPMI installed     
  1252.                                                    (1 - Yes, 0 - No)
  1253.                       available on:   80286 or higher.                   
  1254.   
  1255.                       restrictions:   none.
  1256.  
  1257.                   2.  CHKEMS
  1258.  
  1259.                       Returns whether an Expanded Memory Manager is 
  1260.                       installed.
  1261.  
  1262.                       usage:  ret = chkEMS()                             
  1263.                
  1264.                       argument list:  void                             
  1265.  
  1266.                       return value:   int          if EMS installed      
  1267.                                                    (1 - Yes, 0 - No)
  1268.                       available on:   all machines.                      
  1269.   
  1270.                       restrictions:   none.
  1271.  
  1272.                   3.  CHKVCPI
  1273.  
  1274.                       Returns whether a Virtual Control Program          
  1275.                       Interface is installed.
  1276.  
  1277.                       usage:  ret = chkVCPI()                            
  1278.                
  1279.                       argument list:  void                             
  1280.  
  1281.                       return value:   int          if VCPI installed     
  1282.                                                    (1 - Yes, 0 - No)
  1283.                       available on:   80386 or higher.                   
  1284.   
  1285.                       restrictions:   '386 Extended Memory Manager       
  1286.                                       installed 
  1287.  
  1288.                   4.  CHKXMS
  1289.  
  1290.                       Returns whether an Extended Memory Manager is 
  1291.                       installed.
  1292.  
  1293.                                  - 22 -
  1294.  
  1295.  
  1296.  
  1297.  
  1298.  
  1299.                       usage:  ret = chkXMS()                             
  1300.                
  1301.                       argument list:  void                             
  1302.  
  1303.                       return value:   int          if XMS installed      
  1304.                                                    (1 - Yes, 0 - No)
  1305.                       available on:   80286 or higher.                   
  1306.   
  1307.                       restrictions:   none.
  1308.  
  1309.                   5.  GETAVAILEXT
  1310.  
  1311.                       Returns the amount of available extended memory.
  1312.  
  1313.                       usage:  ret = getAvailExt()                        
  1314.                
  1315.                       argument list:  void                             
  1316.  
  1317.                       return value:   long         avail extended memory 
  1318.               
  1319.                       available on:   80286 or higher.                   
  1320.   
  1321.                       restrictions:   none.
  1322.                   
  1323.                   6.  GETDPMIV
  1324.  
  1325.                       Returns the DPMI version.  
  1326.  
  1327.                       Note: This function expects a DPMI to be           
  1328.                             installed.  Use chkDPMI() to ensure that a   
  1329.                             DPMI is installed.
  1330.  
  1331.                       usage:  ret = getDPMIv(&major,&minor)              
  1332.                
  1333.                       argument list:  int major    version
  1334.                                       int minor    version
  1335.  
  1336.                       return value:   int          0 - if no errors      
  1337.                                                    1 - if errors
  1338.                       available on:   80286 or higher.                   
  1339.   
  1340.                       restrictions:   DPMI driver installed.
  1341.  
  1342.                   7.  GETEMM
  1343.  
  1344.                       Returns '386 Extended Memory Manager type.  This
  1345.                       function expects an Extended Memory Manager to be
  1346.                       installed.  Use chkXMS() to ensure that an         
  1347.                       Extended Memory Manager is installed.
  1348.  
  1349.                       Note: This function expects an XMS Memory Manager
  1350.                           
  1351.  
  1352.                                  - 23 -
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.                       to be installed.  Use chkXMS() to ensure           
  1359.                       that one is installed.
  1360.  
  1361.                       0 - Not installed or unknown Memory-Manager        
  1362.                       1 - Quadtel's QMAPS and Hewlett-Packard's HPMM.SYS 
  1363.                       2 - Microsoft's EMM386.EXE                         
  1364.                       3 - Windows 3.x WIN386.EXE                         
  1365.                       4 - DR-DOS 6.0 EMM386.SYS                          
  1366.                       5 - Qualitas' 386MAX                               
  1367.                       6 - V Communication's Memory Commander             
  1368.                       7 - Quarterdeck's QEMM-386                         
  1369.                       8 - Helix's Netroom RM386                          
  1370.      
  1371.                       usage:  ret = getEMM()                             
  1372.                
  1373.                       argument list:  void                             
  1374.  
  1375.                       return value:   int       '386 Memory Manager type 
  1376.                                                                   
  1377.                       available on:   80386 or higher.                   
  1378.   
  1379.                       restrictions:   XMS memory manager installed.
  1380.  
  1381.                   8.  GETEMS
  1382.  
  1383.                       Returns the total and available 16K pages of EMS
  1384.                       memory.
  1385.  
  1386.                       Note: This function expects an EMS Memory Manager
  1387.                             to be installed.  Use chkEMS() to ensure
  1388.                             that one is installed.
  1389.  
  1390.                       usage:  ret = getEMS(&total,&avail)                
  1391.                
  1392.                       argument list:  int total    16K pages
  1393.                                       int avail    available 16K pages
  1394.  
  1395.                       return value:   int          0 - if no errors      
  1396.      
  1397.                       available on:   all machines.                      
  1398.   
  1399.                       restrictions:   EMS memory manager installed.     
  1400.  
  1401.                   9.  GETEMSI
  1402.  
  1403.                       Returns the number of available EMS handles and
  1404.                       the page frame address.
  1405.  
  1406.                       Note: This function expects an EMS memory manager
  1407.                             to be installed.  Use chkEMS() to ensure
  1408.                             that one is installed.
  1409.  
  1410.  
  1411.                                  - 24 -
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.                       usage:  ret = getEMSi(&handles,&address)           
  1418.                                     
  1419.                       argument list:  int handles  available handles
  1420.                                       int address  page frame address 
  1421.  
  1422.                       return value:   int          0 - if no errors      
  1423.                                              
  1424.                       available on:   all machines.                      
  1425.   
  1426.                       restrictions:   EMS memory manager installed.
  1427.  
  1428.                   10. GETEMSV
  1429.  
  1430.                       Returns the EMS memory manager version.
  1431.  
  1432.                       Note: This function expects an EMS memory manager
  1433.                             to be installed.  Use chkEMS() to ensure
  1434.                             that one is installed.
  1435.  
  1436.                       usage:  ret = getEMSv(&major,&minor)               
  1437.                                                       
  1438.                       argument list:  int major    EMS major version
  1439.                                       int minor    EMS minor version  
  1440.  
  1441.                       return value:   int          0 - if no errors      
  1442.                                             
  1443.                       available on:   all machines.                      
  1444.   
  1445.                       restrictions:   EMS memory manager installed.
  1446.  
  1447.                   11. GETEXT
  1448.  
  1449.                       Returns the total amount of extended memory     
  1450.                       installed.
  1451.  
  1452.                       usage:  ret = getEXT()                             
  1453.              
  1454.                       argument list:  void                        
  1455.  
  1456.                       return value:   long         total extended memory 
  1457.                                              
  1458.                       available on:   80286 or higher.                   
  1459.   
  1460.                       restrictions:   none.                             
  1461.  
  1462.                   12. GETRAM
  1463.  
  1464.                       Returns the total amount of conventional memory
  1465.                       installed.
  1466.  
  1467.                       usage:  ret = getRAM()                             
  1468.                
  1469.  
  1470.                                  - 25 -
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.                       argument list:  void                        
  1477.  
  1478.                       return value:   int          conventional memory  
  1479.  
  1480.                       available on:   all machines.                      
  1481.   
  1482.                       restrictions:   none.                              
  1483.                      
  1484.                   13. GETVCPIV
  1485.  
  1486.                       Returns the VCPI version.
  1487.  
  1488.                       Note: This routine expects a VCPI driver to be
  1489.                             installed.  Use chkVCPI() to ensure that 
  1490.                             one is installed.
  1491.  
  1492.                       usage:  getVCPIv(&major,&minor)                    
  1493.                                                 
  1494.                       argument list:  int major    VCPI major version
  1495.                                       int minor    VCPI minor version  
  1496.  
  1497.                       return value:   void                               
  1498.                                              
  1499.                       available on:   80386 or higher.                   
  1500.   
  1501.                       restrictions:   VCPI driver installed.       
  1502.  
  1503.                   14. GETXMSA
  1504.  
  1505.                       Returns the total available XMS memory and the
  1506.                       largest available block.
  1507.  
  1508.                       Note: This function expects an XMS Memory Manager
  1509.                             to be installed.  Use chkXMS() to ensure
  1510.                             that one is installed.
  1511.  
  1512.                       usage:  ret = getXMSa(&total,&avail)               
  1513.                
  1514.                       argument list:  long total   available XMS memory
  1515.                                       long avail   largest XMS block
  1516.  
  1517.                       return value:   int          0 - if no errors 
  1518.                                                    1 - if errors     
  1519.                       available on:   80286 or higher.                   
  1520.   
  1521.                       restrictions:   XMS memory manager installed.     
  1522.  
  1523.                   15. GETXMSI
  1524.  
  1525.                       Returns if HMA exists and A20 status.
  1526.  
  1527.  
  1528.  
  1529.                                  - 26 -
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.                             0 - HMA does not exist                       
  1536.                             1 - HMA exists                               
  1537.                                                                          
  1538.                             0 - A20 disabled                             
  1539.                             1 - A20 enabled                              
  1540.       
  1541.                       Note: This function expects an XMS Memory Manager
  1542.                             to be installed.  Use chkXMS() to ensure
  1543.                             that one is installed.
  1544.  
  1545.                       usage:  ret = getXMSi(&HMA,&A20)                   
  1546.                 
  1547.                       argument list:  int HMA      status                
  1548.                                   int A20      status                    
  1549.    
  1550.                       return value:   int          0 - if no errors 
  1551.                                                    1 - if errors     
  1552.                       available on:   80286 or higher.                   
  1553.   
  1554.                       restrictions:   XMS memory manager installed.     
  1555.  
  1556.                   16. GETXMSV
  1557.  
  1558.                       Returns XMS memory manager version.
  1559.  
  1560.                       Note: This function expects an XMS Memory Manager
  1561.                             to be installed.  Use chkXMS() to ensure
  1562.                             that one is installed.
  1563.  
  1564.                       usage:  ret = getXMSv(&major,&minor)               
  1565.                 
  1566.                       argument list:  int major    XMS major version     
  1567.                                       int minor    XMS minor version     
  1568.    
  1569.                       return value:   int          0 - if no errors 
  1570.                                                    1 - if errors     
  1571.                       available on:   80286 or higher.                   
  1572.   
  1573.                       restrictions:   XMS memory manager installed.     
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.                                  - 27 -
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.               F.  MOUSE
  1595.  
  1596.                   1.  CHKMOUSE
  1597.  
  1598.                       Returns the number of mouse buttons, zero if     
  1599.                       a mouse is not installed.                       
  1600.  
  1601.                       usage:  ret = chkMouse()                           
  1602.                 
  1603.                       argument list:  void                               
  1604.    
  1605.                       return value:   int          number of buttons
  1606.                                         
  1607.                       available on:   all machines.                      
  1608.   
  1609.                       restrictions:   none.                              
  1610.  
  1611.                   2.  GETMOUSEI
  1612.  
  1613.                       Returns the type of mouse and IRQ.
  1614.  
  1615.                         Type:                                            
  1616.                               1 - Bus mouse                              
  1617.                               2 - Serial mouse                           
  1618.                               3 - Inport mouse                           
  1619.                               4 - PS/2 mouse                             
  1620.                               5 - Hewlett-Packard mouse                  
  1621.                                 
  1622.                         IRQ:                      
  1623.                               PS/2 mouse returns an IRQ of 0.            
  1624.          
  1625.                       Note: This routine expects a mouse driver
  1626.                             to be installed.  Use chkMouse() to 
  1627.                             ensure that one is installed.
  1628.  
  1629.                       usage:  getMouseI(&type,&irq)                      
  1630.                      
  1631.                       argument list:  int type     mouse type
  1632.                                       int irq      mouse IRQ
  1633.  
  1634.                       return value:   void                            
  1635.                                         
  1636.                       available on:   all machines.                      
  1637.   
  1638.                       restrictions:   Microsoft or compatible mouse      
  1639.                                       driver.
  1640.  
  1641.                   3.  GETMOUSEV
  1642.  
  1643.                       Returns the mouse driver version.
  1644.  
  1645.  
  1646.  
  1647.                                  - 28 -
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.                       Note: This routine expects a mouse driver
  1654.                             to be installed.  Use chkMouse() to 
  1655.                             ensure that one is installed.
  1656.  
  1657.                       usage:  getMouseV(&major,&minor)                   
  1658.                      
  1659.                       argument list:  int major    version
  1660.                                       int minor    version
  1661.  
  1662.                       return value:   void                            
  1663.                                         
  1664.                       available on:   all machines.                      
  1665.   
  1666.                       restrictions:   Microsoft or compatible mouse      
  1667.                                       driver.
  1668.  
  1669.  
  1670.  
  1671.  
  1672.  
  1673.  
  1674.  
  1675.  
  1676.  
  1677.  
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683.  
  1684.  
  1685.  
  1686.  
  1687.  
  1688.  
  1689.  
  1690.  
  1691.  
  1692.  
  1693.  
  1694.  
  1695.  
  1696.  
  1697.  
  1698.  
  1699.  
  1700.  
  1701.  
  1702.  
  1703.  
  1704.  
  1705.  
  1706.                                  - 29 -
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.               G.  NETWORK
  1713.  
  1714.                   1.  CHKIPX
  1715.  
  1716.                       Returns whether Novell NetWare IPX installed.
  1717.  
  1718.                       usage:  ret = chkIPX()                             
  1719.                      
  1720.                       argument list:  void                               
  1721.  
  1722.                       return value:   int          if IPX installed   
  1723.                                                    (1 - Yes, 0 - No)
  1724.                       available on:   all machines.                      
  1725.   
  1726.                       restrictions:   none.                              
  1727.     
  1728.                   2.  GETLOGINTIME
  1729.  
  1730.                       Returns login date, time and day of the week.
  1731.  
  1732.                       usage:  ret = getLoginTime(&year,&month,&day,
  1733.                                                &hour,&min,&sec,&weekday)
  1734.  
  1735.                       argument list:  int year     (80-99 = 1980-1999)
  1736.                                                    (00-79 = 2000-2079)
  1737.                                       int month    (1-12) 
  1738.                                       int day      (1-31)
  1739.                                       int hour     (0-23)
  1740.                                       int min      (0-59)
  1741.                                       int sec      (0-59)
  1742.                                       int weekday  (0 = Sunday)   
  1743.  
  1744.                       return value:   int          0 - no errors      
  1745.                                         
  1746.                       available on:   Advanced NetWare 1.0 or higher.    
  1747.    
  1748.                       restrictions:   none.                              
  1749.      
  1750.                   3.  GETNETNAME
  1751.  
  1752.                       Returns the Novell NetWare file server name and 
  1753.                       various file server information.
  1754.  
  1755.                       usage:  ret = getNetName(&ver,&sub,&conn,&use,
  1756.                                                &vol,&peak)
  1757.  
  1758.                       argument list:  int ver      NetWare version       
  1759.  
  1760.                                       int sub      NetWare subversion    
  1761.                                       int conn     connections supported
  1762.                                       int use      connections in use
  1763.  
  1764.  
  1765.                                  - 30 -
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.                                       int vol      maximum volumes
  1772.                                       int peak     connections used
  1773.  
  1774.                       return value:   char *       server name        
  1775.                                         
  1776.                       available on:   Advanced NetWare 2.1 or higher.    
  1777.    
  1778.                       restrictions:   none.                              
  1779.      
  1780.                   4.  GETUSERNAME
  1781.  
  1782.                       Returns the Novell NetWare network user name.
  1783.  
  1784.                       usage:  ret = getUserName()                        
  1785.                           
  1786.                       argument list:  void                               
  1787.  
  1788.                       return value:   char *       network user name  
  1789.                                         
  1790.                       available on:   Advanced NetWare 1.0 or higher.    
  1791.   
  1792.                       restrictions:   none.                              
  1793.     
  1794.                   5.  NETBIOS
  1795.  
  1796.                       Returns whether Novell's NetBIOS emulator is 
  1797.                       installed.
  1798.  
  1799.                       usage:  ret = NetBIOS()                            
  1800.                       
  1801.                       argument list:  void                               
  1802.  
  1803.                       return value:   int          if NetBIOS installed
  1804.                                                     (1 - Yes, 0 - No)
  1805.                       available on:   all machines.                      
  1806.   
  1807.                       restrictions:   none.                              
  1808.     
  1809.                   6.  NETSHELL
  1810.  
  1811.                       Returns whether Novell NetWare Shell installed.
  1812.                       If installed, then the shell version and type 
  1813.                       are returned.
  1814.  
  1815.                                type - shell type (v3.01+)                
  1816.                                   0 - conventional memory                
  1817.                                   1 - expanded memory                    
  1818.                                   2 - extended memory                    
  1819.        
  1820.                       usage:  ret = NetShell(&major,&minor,&rev,&type)
  1821.  
  1822.          
  1823.  
  1824.                                  - 31 -
  1825.  
  1826.  
  1827.  
  1828.  
  1829.  
  1830.                       argument list:  int major    version               
  1831.                                       int minor    version               
  1832.                                       int rev      revision              
  1833.                                       int type     shell type            
  1834.  
  1835.                       return value:   int          if NetShell installed
  1836.                                                      (1 - Yes, 0 - No)
  1837.                       available on:   Advanced NetWare 1.0 or higher.    
  1838.    
  1839.                       restrictions:   none.                              
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.  
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.  
  1867.  
  1868.  
  1869.  
  1870.  
  1871.  
  1872.  
  1873.  
  1874.  
  1875.  
  1876.  
  1877.  
  1878.  
  1879.  
  1880.  
  1881.  
  1882.  
  1883.                                  - 32 -
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  
  1889.                   H.  TSR'S, DRIVERS, SHELLS and TASK SWAPPERS
  1890.  
  1891.                   1.  CPTASK
  1892.  
  1893.                       Returns whether PCTools V8.0 or higher CPTASK
  1894.                       is resident.  
  1895.  
  1896.                       usage:  ret = CPTask()                             
  1897.                       
  1898.                       argument list:  void                               
  1899.  
  1900.                       return value:   int          if CPTask resident  
  1901.                                                     (1 - Yes, 0 - No)
  1902.                       available on:   all machines.                      
  1903.   
  1904.                       restrictions:   none.                              
  1905.     
  1906.                   2.  DBLSPACE
  1907.  
  1908.                       Returns whether DOS 6.0 DBLSPACE is installed.
  1909.  
  1910.                       usage:  ret = DblSpace()                           
  1911.                       
  1912.                       argument list:  void                               
  1913.  
  1914.                       return value:   int          if DBLSPACE installed
  1915.                                                     (1 - Yes, 0 - No)
  1916.                       available on:   DOS 6.0 or higher.                 
  1917.   
  1918.                       restrictions:   none.                              
  1919.     
  1920.                   3.  DOSSHELL
  1921.  
  1922.                       Returns whether DOS 5.0 or higher DOSSHELL task
  1923.                       switcher is resident.  
  1924.  
  1925.                       Note: This check is also supported by PCTools
  1926.                             CPTASK v8.0+ and DR-DOS 6.0 TaskMax.
  1927.  
  1928.                       usage:  ret = DosShell()
  1929.  
  1930.                       argument list:  void                               
  1931.  
  1932.                       return value:   int          if DOSSHELL resident 
  1933.                                                      (1 - Yes, 0 - No)
  1934.                       available on:   all machines.                      
  1935.   
  1936.                       restrictions:   none.                              
  1937.     
  1938.                   4.  GETDESQV
  1939.     
  1940.                       Returns whether DESQview is running.  If 
  1941.  
  1942.                                  - 33 -
  1943.  
  1944.  
  1945.  
  1946.  
  1947.  
  1948.                       running, then the DESQview version is 
  1949.                       returned.
  1950.  
  1951.                       usage:  ret = getDesqV(&major,&minor)
  1952.  
  1953.                       argument list:  int major    version
  1954.                                       int minor    version
  1955.  
  1956.                       return value:   int          if DESQview running
  1957.                                                      (1 - Yes, 0 - No)
  1958.                       available on:   all machines.                      
  1959.   
  1960.                       restrictions:   none.                              
  1961.     
  1962.                   5.  GETWINV
  1963.  
  1964.                       Returns whether Windows 3.0 or higher is 
  1965.                       running.  If running, then the version 
  1966.                       and model are returned.
  1967.  
  1968.                       Mode:  0 - Standard (or Real on Windows 3.0)       
  1969.                              1 - Enhanced                                
  1970.                                                                    
  1971.                       Note: Will detect Windows/386 2.x but only returns 
  1972.                             the major version.                           
  1973.            
  1974.                       usage:  ret = getWinV(&major,&minor,&mode)
  1975.  
  1976.                       argument list:  int major    version
  1977.                                       int minor    version
  1978.                                       int mode     Windows mode
  1979.  
  1980.                       return value:   int          if Windows running
  1981.                                                     (1 - Yes, 0 - No)
  1982.                       available on:   all machines.                      
  1983.   
  1984.                       restrictions:   none.                              
  1985.     
  1986.                   6.  HYPERDISK
  1987.  
  1988.                       Returns whether HyperDisk disk cache v4.20+ 
  1989.                       or higher is installed.
  1990.  
  1991.                       usage:  ret = HyperDisk()
  1992.  
  1993.                       argument list:  void                               
  1994.  
  1995.                       return value:   int         if HyperDisk installed
  1996.                                                     (1 - Yes, 0 - No)
  1997.                       available on:   all machines.                      
  1998.  
  1999.                       restrictions:   none.                              
  2000.  
  2001.                                  - 34 -
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.                   7.  MSCDEX
  2008.  
  2009.                       Returns whether a Microsoft CD-ROM extension 
  2010.                       version 2.00 or higher installed.  If installed, 
  2011.                       then the version is returned.
  2012.  
  2013.                       usage:  ret = MSCDEX(&major,&minor)
  2014.  
  2015.                       argument list:  int major    version
  2016.                                       int minor    version
  2017.  
  2018.                       return value:   int          if MSCDEX installed  
  2019.                                                     (1 - Yes, 0 - No)
  2020.                       available on:   all machines.                      
  2021.   
  2022.                       restrictions:   none.                              
  2023.     
  2024.                   8.  NCACHE
  2025.  
  2026.                       Returns whether Norton NCACHE v5.0 or higher
  2027.                       is installed.
  2028.  
  2029.                       usage:  ret = Ncache()  
  2030.  
  2031.                       argument list:  void                               
  2032.  
  2033.                       return value:   int          if NCACHE installed  
  2034.                                                     (1 - Yes, 0 - No)
  2035.                       available on:   all machines.                      
  2036.   
  2037.                       restrictions:   none.                              
  2038.     
  2039.                   9.  PCCACHE
  2040.  
  2041.                       Returns whether PCTools PC-Cache v6.x or
  2042.                       PC-Cache v7.x is installed.
  2043.  
  2044.                       usage:  ret = PcCache()  
  2045.  
  2046.                       argument list:  void                               
  2047.  
  2048.                       return value:   int          if PC-Cache installed
  2049.                                                      (1 - Yes, 0 - No)
  2050.                       available on:   all machines.                      
  2051.   
  2052.                       restrictions:   none.                              
  2053.     
  2054.                   10. PCKWIK
  2055.  
  2056.                       Returns whether PC-Kwik v3.20 or higher 
  2057.                       disk cache is installed.
  2058.  
  2059.  
  2060.                                  - 35 -
  2061.  
  2062.  
  2063.  
  2064.  
  2065.  
  2066.                       Note:  PC-Cache v5.x and Qcache v4.00 are
  2067.                              OEM versions of PC-Kwik v3.20.
  2068.  
  2069.                       usage:  ret = PCKwik()  
  2070.  
  2071.                       argument list:  void                               
  2072.  
  2073.                       return value:   int          if PC-Kwik installed 
  2074.                                                      (1 - Yes, 0 - No)
  2075.                       available on:   all machines.                      
  2076.   
  2077.                       restrictions:   none.                              
  2078.     
  2079.                   11. SMARTDRV
  2080.  
  2081.                       Returns whether SMARTDrive disk cache is 
  2082.                       installed.
  2083.  
  2084.                       Note:  Also returns if PC-Cache v8.0 or higher
  2085.                              is installed.
  2086.  
  2087.                       usage:  ret = SmartDrv()
  2088.  
  2089.                       argument list:  void                               
  2090.  
  2091.                       return value:   int        if SMARTDrive installed 
  2092.                                                     (1 - Yes, 0 - No)
  2093.                       available on:   all machines.                      
  2094.   
  2095.                       restrictions:   none.                              
  2096.     
  2097.                   12. SPACEMAN
  2098.  
  2099.                       Returns whether Vertisoft SPACEMANager 
  2100.                       (DoubleSpace enhancement) is installed.
  2101.  
  2102.                       usage:  ret = SpaceMan()
  2103.  
  2104.                       argument list:  void                               
  2105.  
  2106.                       return value:   int      if SPACEMANager installed
  2107.                                                    (1 - Yes, 0 - No)
  2108.                       available on:   DOS 6.0 or higher and DoubleSpace  
  2109.   
  2110.                       restrictions:   none.                              
  2111.     
  2112.  
  2113.                   13. STACKER
  2114.  
  2115.                       Returns whether Stacker disk compression
  2116.                       is installed. 
  2117.  
  2118.  
  2119.                                  - 36 -
  2120.  
  2121.  
  2122.  
  2123.  
  2124.  
  2125.                       usage:  ret = Stacker()  
  2126.  
  2127.                       argument list:  void                               
  2128.  
  2129.                       return value:   int          if Stacker installed 
  2130.                                                      (1 - Yes, 0 - No)
  2131.                       available on:   all machines.                      
  2132.   
  2133.                       restrictions:   none.                              
  2134.     
  2135.                   14. TASKMAX
  2136.  
  2137.                       Returns whether DR-DOS 6.0 TaskMax task swapper
  2138.                       is resident.
  2139.  
  2140.                       usage:  ret = TaskMax() 
  2141.  
  2142.                       argument list:  void                               
  2143.  
  2144.                       return value:   int          if TaskMax installed 
  2145.                                                      (1 - Yes, 0 - No)
  2146.                       available on:   all machines.                      
  2147.   
  2148.                       restrictions:   none.                              
  2149.     
  2150.  
  2151.  
  2152.  
  2153.  
  2154.  
  2155.  
  2156.  
  2157.  
  2158.  
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.  
  2176.  
  2177.  
  2178.                                  - 37 -
  2179.  
  2180.  
  2181.  
  2182.  
  2183.  
  2184.                               SYSTEM INFO LIBRARY
  2185.                                 For Borland C++
  2186.                                   Version 1.0
  2187.                                Registration Form
  2188.                                -----------------
  2189.  
  2190.  
  2191.          Name:________________________________________________________
  2192.  
  2193.          Address:_____________________________________________________
  2194.  
  2195.          City:____________________________ State:____ Zip:____________
  2196.  
  2197.          Media size:
  2198.                                 [  ] 360k  5.25"
  2199.                                 [  ] 1.2M  5.25"
  2200.  
  2201.                                 [  ] 720k   3.5"
  2202.                                 [  ] 1.44M  3.5"
  2203.  
  2204.          Where did you obtain this library from:______________________
  2205.  
  2206.          Comments:____________________________________________________
  2207.  
  2208.          _____________________________________________________________
  2209.  
  2210.          _____________________________________________________________
  2211.  
  2212.  
  2213.  
  2214.          Send check or money order (U.S. Banks only) for $39 to:         
  2215.                           
  2216.            
  2217.  
  2218.                                 Paul Lapsansky
  2219.                              1905 Beech St. #317
  2220.                              Valparaiso, IN 46383
  2221.  
  2222.                            Genie I.D. is P.LAPSANSKY
  2223.                          Compuserve I.D. is 70713,3343
  2224.  
  2225.  
  2226.  
  2227.  
  2228.  
  2229.  
  2230.  
  2231.  
  2232.  
  2233.  
  2234.  
  2235.  
  2236.  
  2237.                                  - 38 -
  2238.  
  2239. 
  2240.